﻿<?php
        //print_r($GLOBALS);die;
        //print_r($_SERVER);die;

  /*获取正在编辑的数据id*/

        $id =$_GET['id'];

/*定义一个空数组*/
        $cate=array();



        /*查找当前编辑的数据*/
        $sql = "select * from `power` where `id`=$id";
        $rel = mysqli_query($link,$sql);
        $dd = mysqli_fetch_assoc($rel);

        /*获取当前数据的pid和id*/
        $pid = $dd['pid'];
        $id  =$dd['id'];

        /*将当前数据pid和id传入函数*/
        $cate=Edit($pid,$id,$cate);

        /*将处经过函数查询的数组元素进行倒叙，不改变原来的键*/
        $cate= array_reverse($cate,true);//print_r($cate);die;

        function Edit($pid,$id,$cate=array()){


                /*查找当前数据的同级，并存入数组中,$GLOBALS是访问超全局变量*/
                $sql = "select * from `power` where `pid`=$pid";
                $rel = mysqli_query($GLOBALS['link'],$sql);//返回同级结果集
                while($dd = mysqli_fetch_assoc($rel))

                //将同级结果集存入三维数组中，且二维（select）下标的值为三维数组中当前数据的id（option）
                {
                        $cate[$id][]=$dd;
                }

                /*如果当前数据的pid！=0，说明当前数据还有父级，则查询父级,父级的id=现级的pid*/
                if($pid!=0){

                    $sql1 = "select * from `power` where `id`=$pid";
                    $rel1 = mysqli_query($GLOBALS['link'],$sql1);//返回父级的结果集
                    $dd1 = mysqli_fetch_assoc($rel1);//存储父级的数据

                    /*这个结果不用存在数组$cate中，因为查询父级的作用是获取父级的同级即父级的pid;在查父级同级的时候会把父级的同级全部存入数组中*/

                    /*再查找的当前数据父级的同级即是$dd1['pid']，则调用自身即可，调用自身查找完同级后判断是否有父级*/
                    /*把父级的pid传入函数中，查父级的同级*/
                    $cate = Edit($dd1['pid'],$dd1['id'],$cate);

                }
                return $cate;
        }

          if(!empty($_POST)){


            // /*链接数据库*/
            //  $link = @mysqli_connect('127.0.0.1','root','root','test') or die('数据库连接失败');

            // /*设置数据库传输编码*/
            // mysqli_query($link,'set names utf8');

            /*<--将提交上来的数据存储到数据库-->*/
            $name = $_POST['name'];
            $pid = $_POST['pid'];


            /*编写sql  update语句,修改数据库*/
            $sql = "update `power` set `name`='$name',`pid`='$pid'  where `id`=$id";


            /*执行sql语句*/
            mysqli_query($link,$sql);

            /*获取sql执行后，影响的行数*/
            $math = mysqli_affected_rows($link);


           echo ($math>0)?" <script> alert('修改成功');location.href='index.php?c=power&a=list&admin=1';</script>":" <script> alert('修改失败,您没做任何修改');history.go(-1);</script>";
        }



/*原生代码*/
        /*查找当前编辑的数据*/
        // $sql = "select * from `cate` where `id`=$id";
        // $rel = mysqli_query($link,$sql);
        // $dd = mysqli_fetch_assoc($rel);//echo $dd['pid'];die;print_r($dd);die;
        // $pid = $dd['pid'];
        // //echo $pid;die;50
        // //print_r($dd);die;


        // /*查找当前数据的          同级*/
        // $sql1 = "select * from `cate` where `pid`=$pid";
        // $rel1 = mysqli_query($link,$sql1);
        // while($dd1 = mysqli_fetch_assoc($rel1))//echo $dd['pid'];die;
        // {
        //         $cate[]=$dd1;
        // }//print_r($cate);die;

        // /*查找当前数据的           父级*/
        // $sql2 = "select * from `cate` where `id`=$pid";
        // $rel2 = mysqli_query($link,$sql2);
        // while($dd2 = mysqli_fetch_assoc($rel2))//echo $dd['pid'];die;
        // {
        //         $cate[]=$dd2;
        //         $pid = $dd2['pid'];
        // }//print_r($cate);die;

        // //echo $pid;die;

        // /*查找当前数据父级的         同级*/

        // $sql3 = "select * from `cate` where `pid`=$pid";
        // $rel3 = mysqli_query($link,$sql3);
        // while($dd3 = mysqli_fetch_assoc($rel3))//echo $dd['pid'];die;
        // {
        //         $cate[]=$dd3;
        // }print_r($cate);die;
/*原生代码*/

/*do while 循环查找*/

        /*查询当前数据父级的同级的     父级*/

       //  /*查找当前编辑的数据*/
       //  $sql = "select * from `cate` where `id`=$id";
       //  $rel = mysqli_query($link,$sql);
       //  $dd = mysqli_fetch_assoc($rel);//echo $dd['pid'];die;

       //  $ddb = $dd;

       //  do{
       //      $pid = $ddb['pid'];

       //      $sqla ="select * from `cate` where `pid`=$pid ";

       //      // print_r( $sqla);die;
       //      $rela = mysqli_query($link,$sqla);
       //      while($dda = mysqli_fetch_assoc($rela)){
       //              $cate[$ddb['id']][]=$dda;
       //      };


       //      /*查找当前的父级，父级的id与当前的pid相同*/
       //      $sqlb = "select * from `cate` where `id`=$pid";
       //      $relb = mysqli_query($link,$sqlb);
       //      $ddb = mysqli_fetch_assoc($relb);//echo $dd['pid'];die;

       //  }while($pid>0);
       //  $cate= array_reverse($cate,ture);
       // // print_r($cate);die;
       //  /*查找当前同级，当前的pid与同级的pid相同*/

       //  /*把以上代码，整合成一个函数然后调用自身*/

/*do while 循环查找*/
		include(CON_VIEW.$q.'/common.html');
?>